ContinueWhenAny(TAntecedentResult) Method (Task(TAntecedentResult)[], Action(Task(TAntecedentResult)), CancellationToken)

Task Parallel System.Threading

Creates a continuation Task that will be started upon the completion of any Task in the provided set.

Namespace:  System.Threading.Tasks
Assembly:  System.Threading (in System.Threading.dll)

Syntax

Visual Basic (Declaration)
Public Function ContinueWhenAny(Of TAntecedentResult) ( _
	tasks As Task(Of TAntecedentResult)(), _
	continuationAction As Action(Of Task(Of TAntecedentResult)), _
	cancellationToken As CancellationToken _
) As Task
C#
public Task ContinueWhenAny<TAntecedentResult>(
	Task<TAntecedentResult>[] tasks,
	Action<Task<TAntecedentResult>> continuationAction,
	CancellationToken cancellationToken
)

Parameters

tasks
Type: array< System.Threading.Tasks..::.Task<(Of <(TAntecedentResult>)>) >[]()[]
The array of tasks from which to continue when one task completes.
continuationAction
Type: System..::.Action<(Of <(Task<(Of <(TAntecedentResult>)>)>)>)
The action delegate to execute when one task in the tasks array completes.
cancellationToken
Type: System.Threading..::.CancellationToken
The CancellationToken that will be assigned to the new continuation task.

Type Parameters

TAntecedentResult
The type of the result of the antecedent tasks.

Return Value

The new continuation Task.

Exceptions

ExceptionCondition
System..::.ArgumentNullExceptionThe exception that is thrown when the tasks array is null.
System..::.ArgumentNullExceptionThe exception that is thrown when the continuationAction argument is null.
System..::.ArgumentExceptionThe exception that is thrown when the tasks array contains a null value.
System..::.ArgumentExceptionThe exception that is thrown when the tasks array is empty.
System..::.ObjectDisposedExceptionThe exception that is thrown when one of the elements in the tasks array has been disposed.
System..::.ObjectDisposedExceptionThe provided CancellationToken has already been disposed.

See Also